

#ifndef P2P_PARAMS_HPP
#define P2P_PARAMS_HPP



// tries without a single success before we assume an address is bad.
static const int kNumRetries = 3;


// days before which we assume an address has vanished
// if we have not seen it announced in that long.
static const int kNumMissingDays = 7;

// days since the last success before we will consider evicting an address.

static const int kMinBadDays = 7;

static const int kMaxFailures = 10;

static const int kNewBucketCount = 256;

static const int kNewBucketSize = 64;

static const int kOldBucketCount = 64;

static const int kOldBucketSize = 64;

// buckets a frequently seen new address may end up in.
static const int kMaxNewBucketsPerAddress = 4;


// addresses under which the address manager will claim to need more addresses.
static const int kNeedAddressThreshold = 1000;

// min addresses that must be returned by GetSelection. Useful for bootstrapping.
static const int kMinGetSelection = 32;

// % of total addresses known returned by GetSelection.
static const int kGetSelectionPercent = 23;

// max addresses returned by GetSelection
// NOTE: this must match "maxPexMessageSize"
static const int kMaxGetSelection = 250;
#endif // !P2P_PARAMS_HPP